package top.superflow.constant

object GlobalConst {
  
  /**
   * below constant are all system related
   * start
   */
  val SYSTEM_ENV_VAR_HOME = "superflow.home"
  
  val SYSTEM_ENV_VAR_DB_HOME = "superflow.db.home"
  
  val SYSTEM_CONFIG_URI = "classpath:superflow.properties"
  
  val SYSTEM_CONFIG_FILE = "superflow.properties"

  val SYSTEM_DB_CONFIG_FILE_URI = "classpath:superflow.db.properties"

  val SYSTEM_DB_PROPERTY_FILE = "superflow.db.property.file"
  
  val SYSTEM_DB_CONFIG_FILE_KEY = "superflow.db.properties"
  /**
   * running db config
   */
  val SYSTEM_DB_RUNNING_CONFIG_FILE_NAME = "superflow.db.running.config.name"
  
  val SYSTEM_DB_RUNNING_DEFAULT_CONFIG = "superflow.db.running.default.config"
  
  
  val SYSTEM_CONFIG_SECURITY_ALGORITHM = "superflow.security.algorithm"
  
  val SYSTEM_DB_CONFIG_SECURITY_ALGORITHM = "superflow.db.security.algorithm"
  
  val SYSTEM_DB_CONFIG_DEFAULT_USER_NAME = "superflow.db.security.root.username"
  
  val SYSTEM_DB_CONFIG_DEFAULT_USER_PASSWORD = "superflow.db.security.root.password"
  
  val SYSTEM_DB_CONFIG_DEFAULT_USER_RESOURCES = "superflow.db.security.root.resources"
  
  val SYSTEM_DB_CONFIG_SECURITY_CONFIG_PATH = "superflow.db.security.config.path"
  
  val SYSTEM_DB_CONFIG_DEFAULTDB_NAME = "superflow.db.defaultdb.name"
  
  val SYSTEM_DB_CONFIG_DEFAULTDB_ROOT_USER_NAME = "superflow.db.defaultdb.security.root.username"
  
  val SYSTEM_DB_CONFIG_DEFAULTDB_ROOT_USER_PASSWORD = "superflow.db.defaultdb.security.root.password"
  
  val MUST_INITIALIZED_SYSTEM_VARS = Set(
      SYSTEM_ENV_VAR_HOME
      ,SYSTEM_ENV_VAR_DB_HOME
      ,SYSTEM_CONFIG_SECURITY_ALGORITHM
      ,SYSTEM_DB_CONFIG_SECURITY_ALGORITHM
      ,SYSTEM_DB_CONFIG_DEFAULT_USER_NAME
      ,SYSTEM_DB_CONFIG_DEFAULT_USER_PASSWORD
//      ,SYSTEM_DB_CONFIG_NAME
      )
  
  val SYSTEM_ACTOR_NAME = "supler_flow"
   /**
   * above constant are all system related
   * end
   */
  
}